import server.server.Server;
import server.server.User;
import server.util.mod.ModBase;

public class ModsManagement implements ModBase {

	@Override
	public String listenStr() {
		return "/mods";
	}

	@Override
	public void exec(String[] args, Server server, User sender) {
		if (args.length >= 2) {
			if (args[1].equals("reload")) {
				if (server.modManager.reloadAll() >= 0) {
					server.sendMsgTo("【系统消息】 模组已重新装载！", sender);
				} else {
					server.sendMsgTo("【系统消息】 重新装载过程出现错误！", sender);
				}
			} else if (args[1].equals("list")) {
				StringBuilder names = new StringBuilder("【系统消息】");
				for (ModBase mod : server.modManager.getMods()) {
					names.append(' ').append(mod.getClass().getName()).append(',');
				}
				server.sendMsgTo(names.toString(), sender);
			} else {
				server.sendMsgTo("【系统消息】 命令格式不正确！", sender);
			}
		} else {
			server.sendMsgTo("【系统消息】 命令格式不正确！", sender);
		}
	}

	@Override
	public String helper() {
		return "模组管理\n/mods reload : 重新加载所有模组\n/mods list : 列出所有已加载的模组名称";
	}
}